#include "mainwindow.h"
#include "ui_mainwindow.h"
#include<QDebug>
#include<QToolBar>
#include<QLabel>
#include<QDockWidget>
#include<QVBoxLayout>
MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    this->setWindowTitle("Qt Creator");

    //没有就创建，有就不创建
    QMenuBar* menubar=this->menuBar();
    this->setMenuBar(menubar);

    QMenu* menu1=new QMenu("文件(&F)");
    QMenu* menu2=new QMenu("编辑(&E)");
    QMenu* menu3=new QMenu("构建(&B)");
    QMenu* menu4=new QMenu("调试(&D)");
//    menu1->setIcon(QIcon(":/file.png"));
//    menu2->setIcon(QIcon(":/edit.png"));
//    menu3->setIcon(QIcon(":/struct.png"));
    menu4->setIcon(QIcon(":/debug.png"));
    menu1->setToolTip("文件");
    menu2->setToolTip("编辑");
    menu3->setToolTip("构建");
    menubar->addMenu(menu1);
    menubar->addMenu(menu2);
    menubar->addMenu(menu3);

    QAction* act1=new QAction("新建(&N)");
    act1->setIcon(QIcon(":/built.png"));
    connect(act1,&QAction::triggered,this,&MainWindow::build);
    QAction* act2=new QAction("保存(&S)");
    act2->setIcon(QIcon(":/keep.png"));
    connect(act2,&QAction::triggered,this,&MainWindow::keep);
    QAction* act3=new QAction("另存为(&T)");
    act3->setIcon(QIcon(":/keepto.png"));
    QAction* act4=new QAction("复制(&C)");
    act4->setIcon(QIcon(":/copy.png"));
    QAction* act5=new QAction("粘贴(&V)");
    act5->setIcon(QIcon(":/stick.png"));
    QAction* act6=new QAction("开始调试(&B)");
    act6->setIcon(QIcon(":/start.png"));
    menu1->addAction(act1);
    menu1->addSeparator();
    menu1->addAction(act2);
    menu1->addSeparator();
    menu1->addAction(act3);
    menu2->addAction(act4);
    menu2->addAction(act5);
    menu4->addAction(act6);
    menu1->addMenu(menu4);


    //设置工具栏
    QToolBar* toolbar=new QToolBar();
    this->addToolBar(Qt::RightToolBarArea,toolbar);
    toolbar->setAllowedAreas(Qt::TopToolBarArea|Qt::RightToolBarArea);
    toolbar->setMovable(false);
    toolbar->setFloatable(false);
    toolbar->addAction(act1);
    toolbar->addAction(act2);
    toolbar->addAction(act3);

    //设置状态栏
    QStatusBar* statusbar=this->statusBar();
    this->setStatusBar(statusbar);
//    statusbar->showMessage("这是一个Qt creator",2000);
    QLabel* lab1=new QLabel("1 问题 ");
    QLabel* lab2=new QLabel("2 Search Results ");
    QLabel* lab3=new QLabel("3 应用程序输出 ");
    QLabel* lab4=new QLabel("4 编译输出 ");
    QLabel* lab5=new QLabel("5 概要信息 ");
    statusbar->addWidget(lab1);
    statusbar->addWidget(lab2);
    statusbar->addWidget(lab3);
    statusbar->addPermanentWidget(lab4);
    statusbar->addPermanentWidget(lab5);

    //设置浮动窗口
    QDockWidget* dock=new QDockWidget();
    this->addDockWidget(Qt::LeftDockWidgetArea,dock);
    dock->setWindowTitle("QMenuBar[master]");
    QWidget* widget=new QWidget();
    dock->setWidget(widget);
    QVBoxLayout* layout=new QVBoxLayout();
    widget->setLayout(layout);
    QLabel* lab6=new QLabel("QMenuBar.pro");
    QLabel* lab7=new QLabel("Headers");
    layout->addWidget(lab6);
    layout->addWidget(lab7);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::build()
{
    qDebug()<<"build";
}

void MainWindow::keep()
{
    qDebug()<<"keep";
}

